package com.cgc.venus.server.user.inter;

import com.cgc.venus.server.core.exception.VenusException;
import com.cgc.venus.server.user.bean.FunctionBean;

import java.util.List;
import java.util.Map;

/**
 * Created by xyr on 2017/9/12.
 * 用户中心_用户管理_功能菜单模块
 */
public interface FunctionService {

    /*
    * 是否存在相同的功能菜单
    * @param name 功能名
    * @param belongId 所属功能ID
    * */
    boolean exist(String name,String belongId) throws VenusException;

    /*
    * 新增功能菜单
    * */
    int addFunction(FunctionBean functionBean) throws VenusException;

    /*
    * 修改功能菜单信息
    * */
    int updateFunction(FunctionBean functionBean) throws VenusException;

    /*
    * 获得功能菜单树的根节点
    * */
    List<Map<String,Object>> getRootNode() throws VenusException;


    /*
    * 获得功能菜单的子节点
    * */
    List<Map<String,Object>> getChildrenNode(String belongId) throws VenusException;

    /*
    * 根据功能ID,获的功能菜单的基本信息
    * */
    Map<String,Object> getFunctionById(String id) throws VenusException;

    /*
    * 删除功能信息
    * */
    int deleteFunction(String id) throws VenusException;



}
